  Guile-GCC
-===========-

Extend GCC with Guile and be happier.

Happy birthday Guile 2.0!

This code was initially written in less than a week as part of the “Neat
hacks for a birthday” operation to celebrate the first anniversary of
GNU Guile 2.0:
<http://lists.gnu.org/archive/html/guile-user/2012-02/msg00019.html>.

It contains bindings for subsets of important GCC internal programming
interfaces, which are illustrated by the example Scheme plug-ins under
‘examples/’.

Use of Scheme allows for interesting things such as the embedded
domain-specific language (EDSL) in the (gcc) module that allows
code-generating code to be written very concisely, as opposed to having
series of ‘build’ calls to create and connect ‘tree’ objects.

Future work includes extending the (ice-9 match) pattern matcher found
in Guile to support tree and gimple objects in a simple way.

16 February 2012.
